One aspect of the present invention relates in general to the field of distributed network environments, and in particular to backup management of software environments in a distributed network environment.
In software product test lab environments it is essential to maintain a high test throughput rate to allow for fast verification of new product releases. The number of required tests increases with each new product release, since new products require regression tests based on older environments for compatibility reasons.
A main inhibitor is the setup of the initial test prerequisites. Thus, testers frequently use the known methods of backup/restore of database contents to save a first setup prerequisite and reuse the saved prerequisite in a second setup.
The problem with that personally efficient work is that the information about available prerequisites is not known in a team environment. This is resulting in redundancy in work efforts and disk space over-consumption within and across teams, no reuse of setup prerequisites between different team members, and disk space clean-up is up to each single tester.
In a usual setup of a test lab for a certain hardware/software using just one platform in a distributed test environment a team is assigned to perform tests for the certain hardware/software platform. The first activity of each member of the team is to set up the test prerequisite on the corresponding platform. Since it is much likely that subsequent tests need the same test prerequisite, it is desirable to keep a backup of the test prerequisite for later reuse. For two different tests, assigned to two different test persons, the same test prerequisite is required. So for two test persons and the same test prerequisites, an individual backup is generated. Since the test prerequisites are the same, the two individual backups are redundant backups. A distributed test environment including multiple platforms has an increasing complexity as the number of platforms increases and, as a consequence, the number of assigned teams increases. The number of redundant backups is now extended over the different individual platforms to result in individual backups as redundant backups for the same test prerequisite.
In the document “Standardize image management with the IBM Image Library Virtual” by Joe Wigglesworth (IBM) and Darrel Reimer (IBM), which is hereby incorporated herein by reference in its entirety, a prior art solution to manage cloud virtual images and metadata is disclosed. In the disclosed solution a virtual image consists of the following parts, which are built on top of each other: First, an optional hypervisor (HV), next, an operating system (OS) with optional installed software (IS), and eventually, optional data. To identify similar virtual images, prior art solutions use hash functions like a locality-sensitive hash (LSH). Two virtual images gain similarity the more parts including their predecessor parts are equal. For example, assume image A consists of hypervisor (HV1), operating system (OS1), installed software (IS1), image B consists of hypervisor (HV1), operating system (OS2), installed software (IS2), and image C consists of hypervisor (HV1), operating system (OS1), installed software (IS3). Comparison of the images results in image A is less similar to image B than to image C. Different hypervisors lead to no similarity, although the operating system or installed software higher level parts on top of them might be similar or even equal. Therefore, similarity between two higher levels parts depends on their lower level parts. Since prior art solutions have to take care of the lower level parts, prior art solutions must take care of different target environments and thus store more and larger virtual images for the same or similar relevant software environment (SWE). Prior art metadata are based on information available through the file system within the virtual image.
The prior art solutions do not teach enhanced metadata and do not teach a method for identifying content units included in the software environment itself. Furthermore, the prior art search results do not teach software environments which are independent from their lower level parts.